One of the forefronts of computing technology is speech recognition. With computerized applications controlling many aspects of daily activities from word processing to controlling appliances, providing speech recognition based interfaces for such applications is a high priority of research and development for many companies. Even web site operators and other content providers are deploying voice driven interfaces for allowing users to browse their content. The voice interfaces commonly include “grammars” that define valid utterances (words, terms, phrases, etc.) that can occur at a given state within an application's execution. The grammars are fed to a speech recognition system and used to interpret the user's voice entry.
Speech recognition systems have inherent challenges such as distinction of grammar over background noise, reliability of recognition for larger sizes of the grammar, and the like. Another challenge for speech recognition systems is multi-application environments. While operating systems are known, which provide a multi-tasking capability thereby allowing multiple application programs to run essentially simultaneously, coordinating control of multiple applications through a single speech recognition interface presents many hurdles. As the number of active applications along with their associated list of commands increases, and the combined grammar expands, the system may become less usable, because the application grammars may have an increasing tendency to compete with each other.
It is with respect to these and other considerations that the present invention has been made.